package model;

import dominio.factory.FactoryGame;
import dominio.individuos.Villano;
import dominio.investigacion.Caso;
import dominio.investigacion.Expedientes;
import dominio.investigacion.Mapamundi;
import dominio.ubicaciones.Pais;

public class CarmenSandiegoAppModel {
	
	private FactoryGame factory = new FactoryGame();
	private Pais paisActual;
	private Pais paisAnterior;
	
	private static final CarmenSandiegoAppModel instance = new CarmenSandiegoAppModel();
	
	public static CarmenSandiegoAppModel getInstance() {
		return instance;
	}

	public FactoryGame getFactory() {
		return this.factory;
	}
	
	public void setFactory(FactoryGame factory) {
		this.factory = factory;
	}	
	
	////
	
	public Caso getCaso() {
		return this.getFactory().getCaso();
	}
	
	public Expedientes getExpedientes() {
		return this.getFactory().getExpedientes();
	}
	
	public Mapamundi getMapamundi() {
		return this.getFactory().getMapamundi();
	}
	
	////
	
	
	public CarmenSandiegoAppModel() {
		this.paisActual =  this.getCaso().getPaisDelRobo();
	}

	public Pais getPaisActual() {
		return this.paisActual;
	}
	
	public void setPaisActual(Pais pais) {
		this.paisActual = pais;
	}

	public Pais getPaisAnterior() {
		return this.paisAnterior;
	}
	
	public void setPaisAnterior(Pais pais) {
		this.paisAnterior = pais;
	}

	public Villano getVillanoResponsable() {
		return this.getCaso().getResponsable();
	}
	
	public void viajar(Pais pais) {
		this.setPaisAnterior(this.getPaisActual());
		this.setPaisActual(pais);
	}

	
}
